home *** CD-ROM | disk | FTP | other *** search
/ Tech Arsenal 1 / Tech Arsenal (Arsenal Computer).ISO / tek-04 / vclang11.zip / CONCURRE.CLN < prev    next >
Text File  |  1990-08-17  |  432b  |  30 lines

  1. program CONCURRENT;
  2.  
  3. var
  4.   SHARED, SEMAPHORE;
  5.  
  6. procedure PROCESS(LIMIT);
  7.  
  8.   var
  9.     LOOP;
  10.  
  11.   begin
  12.     LOOP := 1;
  13.     while LOOP <= LIMIT DO
  14.       begin
  15.         write(LIMIT, SHARED);
  16.         wait(SEMAPHORE);
  17.         SHARED := SHARED + 1;
  18.         signal(SEMAPHORE);
  19.         LOOP := LOOP+1
  20.       end
  21.   end;
  22.  
  23. begin
  24.   SEMAPHORE := 1;
  25.   SHARED := 0;
  26.   cobegin
  27.     PROCESS(4);
  28.     PROCESS(5+3);
  29.   coend;
  30. end.